package com.smart.community.region.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.smart.community.commons.base.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 店铺费用记录实体类
 * 
 * @author Wu.Liang
 * @version 1.0.0
 * @since 2025-09-30
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("sc_shop_fee_record")
public class ShopFeeRecord extends BaseEntity {
    /**
	 * @author Wu.Liang
	 * @date 2025年9月30日
	 */
	private static final long serialVersionUID = 1895970906328341771L;

    /**
     * 店铺ID
     */
    @TableField("shop_id")
    private Long shopId;
    
    /**
     * 费用类型：PROPERTY-物业费，WATER-水费，ELECTRIC-电费，GAS-燃气费，SANITATION-卫生费
     */
    @TableField("fee_type")
    private String feeType;
    
    /**
     * 费用金额
     */
    @TableField("fee_amount")
    private BigDecimal feeAmount;
    
    /**
     * 费用期间
     */
    @TableField("fee_period")
    private String feePeriod;
    
    /**
     * 费用开始日期
     */
    @TableField("fee_start_date")
    private LocalDate feeStartDate;
    
    /**
     * 费用结束日期
     */
    @TableField("fee_end_date")
    private LocalDate feeEndDate;
    
    /**
     * 支付状态：0-未支付，1-已支付，2-逾期
     */
    @TableField("payment_status")
    private Integer paymentStatus;
    
    /**
     * 支付日期
     */
    @TableField("payment_date")
    private LocalDateTime paymentDate;
    
    /**
     * 支付方式
     */
    @TableField("payment_method")
    private String paymentMethod;
    
    /**
     * 发票号码
     */
    @TableField("invoice_number")
    private String invoiceNumber;
    
    /**
     * 备注
     */
    @TableField("remark")
    private String remark;
}
